/******************************框架通用枚举，不需要改动******************************/
export module CommonEnum {

    /*****************************************框架功能*****************************************/
    /**传递全局数据时给每个数据指定的唯一名称 */
    export enum GlobalDataType {
        /**用于与myGlobalDataType枚举值区分开 */
        startIndex = 10000,
        /**当前游戏的关卡数据版本信息 */
        levelDataVersion,
        /**当前场景中所有UI_2D层的根节点，相当于2.x版本中的Canvas节点 */
        canvas,
        /**当前场景中所有UI_2D层的根节点的UITransform组件 */
        canvasTransform,
        /**UI根节点 */
        rootUI,
        /**互推根节点 */
        rootRecommond,
        /**关卡相机脚本 */
        levelCamera,
    }


    /*****************************************互推预制件*****************************************/
    //#region 互推预制件
    //互推预制件
    export enum RecommendPrefab {
        item = "RecommendItem",                 //基础类型的互推游戏节点
        drawer = "RecommendDrawer",             //矩阵抽屉
        banner = "RecommendBanner",
        matrix = "RecommendMatrix",
        primary = "RecommendPrimary",
        primary_tt = "RecommendPrimary_TT",
        btnCenter_tt = "RecommendBtnCenter_TT", //头条平台正中间的互推按钮
        btnSide_tt = "RecommendBtnSide_TT",     //头条平台靠边的互推按钮
    }
    //互推游戏节点类型
    export enum RecommendItemType {
        /**包含游戏icon，游戏名称，背景图的互推节点 */
        iconNameBg = "RecommendItem_iconNameBg",
        /**包含游戏icon，游戏名称的互推节点 */
        // iconName = "RecommendItem_iconName",
        /**包含游戏icon的互推节点 */
        icon = "RecommendItem_icon",
        /**包含游戏icon，背景图的互推节点 */
        // iconBg = "RecommendItem_iconBg",
    }
    //互推矩阵抽屉类型
    export enum RecommendDrawerType {
        left = 1,       //从左侧进入的抽屉
        right,          //从右侧进入的抽屉
    }
    //互推banner类型
    export enum RecommendBannerType {
        pingpong = 1,   //来回滚动
        left,           //永远向左滚动
        right,          //永远向右滚动
    }
    //#endregion

    /*****************************************后台配置*****************************************/
    //#region 后台配置
    /**游戏流程节点 */
    export enum GameFlowStep {
        /**初始场景 */
        initScene = "InitScene",
        /**广告位弹窗 */
        recommendDialog = "RecommendDialog",
        /**游戏首页 */
        lobby = "GameLobby",
        /**游戏中 */
        level = "Level",
        /**奖励领取界面 */
        award = "AwardUI",
        /**胜利界面 */
        win = "WinUI",
        /**失败界面 */
        lose = "LoseUI",

    }
    /**游戏流程中穿插的导流节点类型 */
    export enum RecommendFlowStep {
        /**游戏弹窗（全导页） */
        dialog = "alert",
        /**观看视频 */
        video = "shipin",
        /**banner误触页 */
        touchBannerUI = "zadan",
        /**插屏广告 */
        insertAd = "chaping",
        /**大全导页 */
        bigPage = "daquandao",
        /**中全导页 */
        middlePage = "zhongquandao",
        /**小全导页 */
        littlePage = "xiaoquandao",
    }
    /**导流节点的后台开关属性 */
    export enum RecommendFlowConfig {
        /**是否开启，值：1-开启，0-关闭 */
        visible = "kaiguan",
        /**导出模式，值：1-正常模式，相当于开关关闭；2-导流模式，正常显示广告位；3-banner模式，即开启误触，误触条件达成时显示banner */
        mode = "daochumode",
        /**节点出现次数 */
        count = "cishu",

        //砸蛋页配置：
        /**砸蛋模式可选随机范围 */
        touchBannerRandomMode = "zadanmode",
        /**误触页出现banner需要的按钮点击次数范围 */
        touchBannerClickCount = "chuxian",
        /**banner出现的重复次数 */
        touchBannerRepeatCount = "chongfucishu",

        //结算页误触配置
        /**结算页显示后，banner经过多长时间显示，单位：秒 */
        resultBannerShowDelay = "chuxian",
        /**结算页显示后，被banner遮挡的按钮经过多长时间移动，单位：秒 */
        resultBtnMoveDelay = "yidong",

        //全导页配置
        /**全导页显示后，banner经过多长时间显示，单位：秒 */
        recommendBannerShowDelay = "chuxian",
        /**全导页banner显示后，经过多长时间隐藏，单位：秒 */
        recommendBannerHideDelay = "xiaoshi",
        /**全导页关闭按钮延迟显示的时间 */
        recommendBtnShowDelay = "yanchishow",

        //闪屏误触banner：
        /**按钮预点击次数：开始延迟显示banner之前需要点击按钮的次数，为固定次数或范围 */
        preClickCount = "diaochu",
        /**点击按钮达到指定次数后，延迟显示banenr的时间，单位：秒 */
        shanPinShowBannerDelay = "chuxian",
        shanPinShowBannerDelay2 = "chuxian2",
        /**banner显示后自动隐藏的延迟时间，单位：秒 */
        shanPinHideBannerDelay = "yidong",
        shanPinHideBannerDelay2 = "yidong2",

    }
    /**全导页后台配置属性 */
    export enum RecommendUIConfig {
        /**已跳转过的游戏不再显示 */
        hideJumpedGame = "jumpedhidekaiguan",
        /**点击已跳转游戏时随机跳转其他游戏 */
        randomJumpGame = "jumpedrandomkaiguan",
        /**点击广告节点后的页面刷新行为，1：无任何行为；2：刷新被点击节点内容；3-刷新节点所在页面的所有内容 */
        clickGameRefreshMode = "clickedbehavior",
        /**取消跳转后的页面刷新行为，模式代号同点击节点后的行为 */
        cancelJumpGameRefreshMode = "canceledbehavior",
    }
    /**后台配置全局开关 */
    export enum GameFlowGlobalConfig {
        /**广点通过审开关 */
        guoshen = "gdtguoshenkaiguan",
        /**砸蛋页是否必须点击banner才能继续游戏 */
        mustTouchBanner = "zadanbidiankaiguan",
        /**游戏中误触次数 */
        levelTouchBanner = "playingwuchucishu",

        /**banner隐藏时是否立即加载新的banner */
        autoRefreshBanner = "switchbannerkaiguan",
        /**无误触的开关 */
        nowuchukaiguan = "nowuchukaiguan",

        /**QQ平台：结算页点击取消视频领取复选框时是否播放视频 */
        showVideoOnCancelVideoTog = "autovideokaiguan",
        /**QQ平台：盒子广告是否可自动弹出 */
        autoShowAppBox = "boxadkaiguan",

        /**OPPO平台：原生广告页弹出开关及次数 */
        showNativeAdUI = "rawadkaiguan",
        showNativeAdUICount = "rawadcishu",
        /**OPPO平台：原生广告是否隐藏关闭按钮 */
        nativeAdOPPOHideBtnClose = "adclosekaiguan",
        /**OPPO平台：原生广告页面是否显示“查看详情”按钮 */
        nativeAdUIShowBtnScan = "jumpadkaiguan",

        /**是否自动勾选观看视频的复选框，1：勾选 */
        autoSelectVideoTog = "videoselectkaiguan",

        /**关卡中是否闪屏 */
        levelShowBanner = "playingspkaiguan",

        /**进入首页时是否显示互推弹窗 */
        indexalertkaiguan = "indexalertkaiguan",
    }
    /**banner误触位置的展示模式：展示banner还是广告位，是否开启误触 */
    export enum BannerTouchMode {
        /**正常模式，相当于后台开关关闭 */
        normal = 1,
        /**导流模式，正常显示广告位 */
        recommend = 2,
        /**banner模式，即开启误触，误触条件达成时显示banner */
        banner = 3,
        /**结算页误触方式：显示banner后移动按钮到正常位置 */
        moveButton = 4,
        /**结算页误触方式：显示两次banner，点击按钮后，延迟显示banner-延迟隐藏banner-延迟显示banner-延迟隐藏banner-可有效点击按钮 */
        showBannerTwice = 5,
        /**结算页：按钮显示在正常位置，底部显示与banner一样大小的广告位，无误触 */
        showSingleRecommend = 6,
        /**结算页：飞屏——UI显示后，按钮显示在底部，延迟显示banner，延迟瞬移按钮到正常位置 */
        moveButtonFast = 7,
    }
    /**banner误触类型 */
    export enum BannerTouchType {
        /**基类，用于错误提醒 */
        base,
        /**导流页误触按钮 */
        bannerToucher_recommendPage,
        /**结算页误触按钮 */
        bannerToucher_resultUI,
        /**不处理banner广告显隐的按钮 */
        noneBannerButton,
    }
    //#endregion

    /**触摸控制器状态 */
    export enum CtrlState {
        none = 1,
        touched,    //按住状态
    }

    /**用于数据统计的视频事件 */
    export enum VideoSubType {
        showVideoBtn = 7,       //曝光，比如复活时看到观看视频按钮
        openVideoWindow = 0,    //主动触发打开视频窗口
        closeVideoWindow = 1,   //看到视频窗口后主动关闭
        clickBtnVideo = 2,      //点击播放视频
        videoQuit = 3,          //视频中途关闭视频
        videoSuc = 4,           //观看结束
        getAward = 5,           //获得奖励
        videoFail = 6,          //没有可观看的广告
    }

}